查看原文
其他

读懂比特币铭文风波:漏洞利用还是价值创新?

TinTinLand TinTinLand 2023-12-23

身处加密叙事风口浪尖的比特币铭文,正陷入一场有关技术和利益的社区争论之中。

比特币铭文是什么?技术上而言,每个比特币被分成 1 亿个称为聪 satoshis(SATS)的单位。每个比特币都像是一个小小的存储空间,而铭文就是在这个空间里存放一些额外信息。例如通过使用 Ordinals 协议将内容写入 satoshi 进行铭刻,写入的信息可以是文字、图片、视频和音频等。

根据放置内容的不同,比特币铭文可以分为基于文本的铭文和基于图像的铭文两大类。前者主要用于创建代币,例如 BRC-20 Token 标准;后者主要用于创建 NFT,即可收藏的数字艺术品或收藏品。截至目前,已经有超过 4,260 万枚铭文被铸造。

铭文领域正在经历飞速的发展,创造了许多致富神话和叙事热潮,而比特币核心开发者提出在 Bitcoin Core 版本升级禁用铭文后,争议四起,给当下爆红的 Ordinals、BRC20 生态泼了一盆冷水。



比特币铭文争议:

禁用铭文是唯一出路吗?

Bitcoin Core 开发者:

铭文系统正在利用漏洞运行

12 月 6 日,比特币核心开发人员 Luke Dashjr 在 X 表示,「铭文(Inscriptions)」正在利用比特币核心客户端 Bitcoin Core 的一个漏洞向区块链发送垃圾信息。自 2013 年以来,Bitcoin Core 允许用户设置在转发或挖矿交易时的额外数据大小限制 ('-datacarriersize')。铭文通过将其数据伪装为程序代码,绕过了这个限制。

Luke 表示,「这个漏洞最近在比特币 Knots v25.1 中得到修复。由于去年底我的工作流程受到了严重干扰(v24 被完全跳过),修复时间比平常长。在即将发布的 v26 版本中,Bitcoin Core 仍然存在漏洞。我只能希望它会在明年的 v27 之前得到最终修复。」

Luke 是比特币早期核心开发者之一,自 2011 年以来一直致力于比特币开发。作为极具代表性的比特币 NFT 协议 Ordinals 反对方之一,Luke 一直旗帜鲜明地认为该协议是对比特币的一种「攻击」,反对在比特币上铸造 NFT,甚至表示自己已开发一个简易的「垃圾邮件过滤器」,可以供矿工筛选铭文并防止它们通过比特币网络转发。

修复漏洞后,

铭文将会无法运行吗?

Luke 的这一观点引发出关于 Bitcoin Core 是否应该以及能否使铭文消失的担忧。

Luke Dashjr 在 X 的评论回复中确认,此前其披露的 Bitcoin Core 漏洞如果修复,意味着 Ordinals 和 BRC-20 将不复存在。另一条评论表示「如果『铭文』想要继续下去,一个更环保的方法就是创建一个『铭文链』,类似于以太坊的 Layer 2,这个链只需要定期向比特币提交哈希值就可以运行了,对吗?」Luke Dashjr 回复,「是的,那行得通。然后它甚至根本不需要有区块大小限制,每个节点都可以设置自己的限制(或没有)」。

事实上,因 Ordinals 协议出现的为 Sats 编码以及用 BRC-20 方式在比特币网络上发行加密资产的方式,从年初至今已创造出一个万亿美元的市场,上千万种铭文在其中流通,有几十万人持有,还因造成比特币网络拥堵而为矿工群体带来了巨量手续费收入。铭文参与者和部分矿工自然站到了一起,反对 Luke 指出的 Bitcoin Core 贸然修复 「所谓的漏洞」

Bitcoin Core 是一个开源客户端软件,它实现了比特币协议,并允许节点参与到比特币网络中,维护一个完整的区块链副本,验证所有交易和区块。Bitcoin Core 定期发布更新,这些更新可能包含新功能、安全修复、性能改进等,用户需要主动更新他们的客户端以获得这些改进。

但 Bitcoin Core 的开发者有权力修复漏洞以至于让铭文在未来无法运行吗?

其实,比特币网络是由全球分布的节点组成的去中心化网络,Bitcoin Core 客户端只是这些节点可能使用的多种客户端软件之一,并不意味着拥有对比特币进行修改的核心权力。

另一方面,对比特币协议的任何重大变更,比如修复漏洞或引入新功能,都需要网络上大多数节点的共识。这通常通过软分叉或硬分叉的方式实现。因此,Bitcoin Core 虽然有影响力,但不控制比特币网络。网络的变化取决于社区成员的共同决策,包括开发者、矿工、商家和普通用户。

比特币铭文的安全危机

据 Cointelegraph 报道,美国国家漏洞数据库 (NVD) 于 12 月 9 日将比特币铭文标记为网络安全风险,呼吁人们关注 2022 年 Ordinals Protocol 开发的安全漏洞。该数据库由美国商务部下属机构美国国家标准与技术研究所 (NIST) 管理。

根据数据库记录,在某些版本的 Bitcoin Core 和 Bitcoin Knot 中,可以通过将数据模糊为代码来绕过数据载体限制。漏洞目前正在分析中,作为一种潜在影响,它可能会导致大量非交易数据充斥区块链,可能会增加网络规模,并对性能和费用产生不利影响。被添加到 NVD 列表意味着特定的网络安全漏洞已被识别、编录并被认为应该被公众意识到。

10 日,Luke Dashjr 提到,「铭文」利用 Bitcoin Core 客户端的漏洞已被分配标识符 CVE-2023-50428。这是否意味着比特币铭文会影响比特币网络的安全性?

慢雾创始人余弦在 X 上发文认为,「铭文这个问题被分配了个 CVE 编号,这是釜底抽薪了,态度鲜明地定性漏洞了...CVE 编号不是什么新鲜事,许多安全团队/个人都可以申请,没太看重这个,但可能比特币生态相关角色会看重这个,毕竟 CVE 编号在安全行业是最知名的漏洞证明之一。」同时他指出,CVE 编号有被 NVD 引用是很正常的事,还不至于上升到「向美国联邦政府寻求帮助,试图审查序号/铭文交易」这种层面。



观点交锋:

漏洞攻击还是创新价值?

在这场争论中,支持 Luke 的观点认为,铭文绕过了标准的 Bitcoin 数据存储方法,应该被视为漏洞,也是对比特币生态完整性和去中心化价值的威胁

比特币开发者、Nostr Damus 创始人 William Casarin 针对铭文争议表示,比特币核心一直不鼓励这种做法,因为它不是为存储图像和数据而设计的,而是为了在网络空间中移动数字货币而设计的;铭文将数据伪装为比特币脚本程序数据,在技术上是一种攻击,希望我们很快也能在 core 客户端对抗这种 SPAM;比特币不是用来存储数据的,只要比特币开发者不小心让它变得便宜且易于转发数据,那么这应该被视为一种漏洞;期望它能够得到修复,或者至少为节点运行者提供对抗这种 SPAM 的工具;他表示支持 Luke 的观点,认为这关乎比特币网络的健康和去中心化

也有观点认为,铭文对比特币网络带来了正面影响和安全创新的价值。

开发者 @jolestar 则发布推文提到,铭文热明显带来了用户和 Bitcoin 网络更多的直接连接(浏览器钱包),带来了 DApp 应用生态的雏形,有更多用户关心账本记录了什么东西,铭文对 Bitcoin 网络的安全有提升铭文是对 Bitcoin 作为 DA 的价值发现,同时配合 Indexer 的玩法展示了新的 L2 的构建途径,对 Bitcoin 生态有重大意义,它是个 Feature 而不是 Bug;建议可以用 Hash 替代铭文的内容或设计一套协议支持铭文在链上和链下之间的迁移。



一起探索 BTC 未来铭文时代的

演进与机遇

为了深入洞察这一比特币生态的最新事件,本期 TinTinWeekly 邀请了来自投资机构和项目方的资深研究员作为嘉宾,为我们解答这场铭文争议背后,比特币生态未来演进和发展的方向。

活动时间 

2023 年 12 月 12 日(周二) 20:00 UTC+8

活动主题

比特币漏洞修复、新协议发布:如何看待 BTC 未来铭文时代的演进与机遇?

活动流程

  • 20:00-21:30 圆桌分享

  • 21:30-22:00 Q&A 环节

活动语言

中文

活动形式

  • 关注 TinTin 推特账号:@OurTinTinLand

  • Twitter Space :

    https://twitter.com/i/spaces/1DXxyjzoaZRKM

对比特币生态相关话题感兴趣的开发者,请不要错过这场精彩的深度对话!



往期精彩

BTC 复兴:Ordinals 带来创新活力,BitVM 与 BitStream 相继问世

Viction 崭新篇章:越南实力公链的技术蜕变与愿景雄心

背靠八亿月活的 Telegram,TON 生态仍有庞大的开发潜能


关于我们

ABOUT US



TinTinLand 是赋能下一代开发者的技术社区,通过聚集、培育、输送开发者到各开放网络,共同定义并构建未来。


Discord: https://discord.gg/kmPnTDSFu8

Twitter: https://twitter.com/OurTinTinLand

Bilibili: https://space.bilibili.com/1152852334

Medium: https://medium.com/@tintin.land2021

YouTube: https://www.youtube.com/channel/UCfHiMcFt-4btbC75FsReQh

继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存